<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>虚拟 DOM 与真实 DOM</title>
</head>

<body>
    <!-- 容器 -->
    <div id="test"></div>

    <!-- react.development 必须在 扩展 dom 之前引入 -->
    <script type="text/javascript" src="../js/react.development.js"></script>
    <script type="text/javascript" src="../js/react-dom.development.js"></script>
    <script type="text/javascript" src="../js/babel.min.js"></script>
    <script type="text/babel"> /* 此处一定要写 babel */
        // 创建虚拟 DOM 
        // const VDOM = <h1 id="title">hello react</h1>;
        const VDOM = (//此处为虚拟 DOM 不能加引号
            <h1 id="title">
                <span id="new">hello react</span>
            </h1>
        )
        // 渲染
        ReactDOM.render(
            VDOM,
            document.getElementById('test')
        )

        const TDOM = document.getElementById('test');
        console.log('虚拟DOM',VDOM);
        console.log('真实DOM', TDOM);
        debugger;

        // console.log(typeof VDOM);
        // console.log(VDOM instanceof Object);
        /**
         * 关于虚拟DOM
         * 1、本质是Object类型的对象（一般对象）
         * 2、虚拟DOM比较“轻”，真实DOM比较“重”，因为虚拟DOM是react内部在用，无需真实DOM上那么多的属性
         * 3、虚拟DOM最终会被react转化为真实DOM，呈现在页面上
         * 
         */
    </script>
</body>

</html>